package com.kimi.abyss.rbac.api.feign;

import com.kimi.abyss.rbac.api.dto.UserInfo;
import com.kimi.abyss.rbac.api.feign.factory.RemoteSysUserServiceFallbackFactory;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import reactivefeign.spring.config.ReactiveFeignClient;
import reactor.core.publisher.Mono;

/**
 * no-op
 *
 * @author kimi
 * @date 2021/7/19
 */
@ReactiveFeignClient(name = "abyss-rbac-biz", fallbackFactory = RemoteSysUserServiceFallbackFactory.class)
public interface RemoteSysUserService {

    @GetMapping("/user/info/{username}")
    Mono<UserInfo> getUserInfo(@PathVariable("username") String username);

}
